import { IsString, IsNumber, IsBoolean, IsOptional } from 'class-validator';

export class CreateVirtualCharacterDto {
  @IsNumber()
  gender: number;

  @IsString()
  avatarUrl: string;

  @IsString()
  nickName: string;

  @IsString()
  @IsOptional()
  voiceUrl?: string;

  @IsString()
  relationship: string;

  @IsString()
  callUser: string;

  @IsString()
  characterSetting: string;

  @IsString()
  @IsOptional()
  openingRemarks?: string;

  @IsString()
  @IsOptional()
  dialogueExamples?: string;

  @IsBoolean()
  @IsOptional()
  isActive?: boolean;
}

export class UpdateVirtualCharacterDto {

  @IsString()
  @IsOptional()
  nickName?: string;

  @IsString()
  @IsOptional()
  avatarUrl?: string;

  @IsString()
  @IsOptional()
  voiceUrl?: string;

  @IsString()
  @IsOptional()
  relationship?: string;

  @IsString()
  @IsOptional()
  callUser?: string;

  @IsString()
  @IsOptional()
  characterSetting?: string;

  @IsString()
  @IsOptional()
  openingRemarks?: string;

  @IsString()
  @IsOptional()
  dialogueExamples?: string;

  @IsBoolean()
  @IsOptional()
  isActive?: boolean;
} 